Dynamic Projection System

ABSTRACT

Described in detail herein are methods and systems for dynamic projection. The dynamic projection system includes a projector configured to project a first set of information associated with a set of like physical objects onto a front portion of a shelving unit. The first set of information includes an image of a machine-readable element encoded with an identifier associated with the set of like physical objects. An optical scanner can scan and decode the identifier from the image of the machine-readable element. The optical scanner can transmit the identifier or location of the scanner to a computing system. The computing system can further control an output of the projector to dynamically project the second set of information associated with the set of like physical objects onto the front portion of the shelving unit receiving the identifier or location of the optical scanner.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This is a continuation application that claims the benefit ofco-pending, U.S. Non-Provisional patent application Ser. No. 15/700,523,filed on Sep. 11, 2017, which claims the benefit of U.S. ProvisionalApplication No. 62/395,005 filed on Sep. 15, 2016. The entire contentsof the foregoing patent applications are incorporated herein byreference.

BACKGROUND

It can be a long and error prone process to change labels on shelvesassociated with physical objects.

BRIEF DESCRIPTION OF DRAWINGS

Illustrative embodiments are shown by way of example in the accompanyingdrawings and should not be considered as a limitation of the presentdisclosure:

FIG. 1A is a diagram of a laser projector disposed with respect to ashelving unit in a facility according to the present disclosure;

FIG. 1B is a block diagram of laser projectors disposed with respect toshelving units in a facility according to the present disclosure;

FIG. 2 illustrates an exemplary dynamic projection system in accordancewith exemplary embodiments of the present disclosure;

FIG. 3 illustrates an exemplary computing device in accordance withexemplary embodiments of the present disclosure;

FIG. 4 is a flowchart illustrating a dynamic projection process based ona received identifier according to exemplary embodiments of the presentdisclosure; and

FIG. 5 is a flowchart illustrating a dynamic projection process based onlocation information according to exemplary embodiments of the presentdisclosure.

DETAILED DESCRIPTION

Described in detail herein are methods and systems for dynamicprojection. The dynamic projection system includes a projectorconfigured to project a first set of information associated with a setof like physical objects onto a front portion of a shelving unit. Thefirst set of information includes an image of a machine-readable elementencoded with an identifier associated with the set of like physicalobjects. An optical scanner can scan the projection of the image of themachine-readable element and decode the identifier from themachine-readable element. A computing system communicatively coupled tothe projector and the optical scanner, can query a database using theidentifier to retrieve a second set of information associated with theset of like physical objects. The computing system can further controlan output of the projector to dynamically project the second set ofinformation associated with the set of like physical objects onto thefront portion of the shelving unit in place of the first set ofinformation associated with the set of like physical objects and inresponse to the optical scanner scanning the image of themachine-readable element. The front portion of the shelving unit can beat a predetermined angle and the projector is configured to project thefirst and second sets of information at the predetermined angle. Theprojector is configured to render the first set of information in afirst color and render the second set of information in a second color.

The optical scanner further includes a location module configured tooutput location information associated with the optical scanner to thecomputing system. The computing system is further programmed todetermine the location of the optical scanner in response to receipt ofthe location information, query a database to retrieve an identificationof a set of like physical objects disposed at the location, identify theprojector as being closest in proximity to the location of the opticalscanner, and control the projector to output a third set of informationon the front portion of the shelving unit (e.g., in place of the firstset of information). The computing system is further programmed tocontrol the projector to output the first set of information on thefront portion of the shelving unit subsequent to outputting the secondset of information on the front portion of the shelving unit based ondetermining a distance between the shelving unit and the optical scanneris greater than a predetermined threshold.

The optical scanner is configured to scan the image of themachine-readable element by detecting a pulse/strobe rate, frequency, orpattern at which the projector renders the image. The pulse rate isunique to the identifier encoded in the image of the machine-readableelement. The optical scanner decodes the identifier from themachine-readable element based on the pulse rate, frequency, or pattern.

FIG. 1A is a schematic diagram a laser projector 102 disposed withrespect to a shelving unit 108 in a facility. The shelving unit 108 andthe laser projector 102 can be disposed in a facility 100. The shelvingunit can include shelves 114 a-c and each of the shelves can includefront portions/faces 116 a-c. The front portions 116 a-c can be disposedat a predetermined angle. Physical objects 112 can be disposed on theshelves 114 a-c. The laser projector 102 can include a lens 105 andmirrors 104. A laser projector 102 can produce light by emitting lasersat various pulse rates. The light can create an image which can beprojected onto an area.

The laser projector 102 can be configured to project an image of aprojected label 110 including first set of information associated withthe physical objects 112 onto the front portion 116 a-c of the shelvesas a projected label 110. For example, the laser projector 102 canproject an image of the projected label 110 through the lens 106 whichcan reflect off of the mirrors 104 and projects the image of theprojected label 110 on the front portion 116 b of the shelf 114 b. Themirrors 104 can be positioned in a pre-determined angle so that inresponse to the image of the projected label 110 being reflected off ofthe mirrors 104, the image of the projected label 110 can be projectedon the front portion 116 b of the shelf at the same angle at which thefront portion 116 b of the shelf is disposed. The first set ofinformation can include an image of the machine-readable element encodedwith an identifier associated with the physical objects 112 and/or otherinformation associated with the physical objects. The laser projector102 can be configured to project the image of the projected label 110 ata predetermined pulse rate or pattern. Each set of like physical objectsdisposed on the shelving unit can have a different projected label. Eachprojected label on the shelving unit 108 can be projected at a differentpulse rate or with a different pulse pattern. A pulse rate is the numberof times a pulsed activity occurs or a pulse repetition frequency (PRF).A pulse pattern is a sequence of light pulses where the duration of thelight pulses and the time between the light pulses can be variedaccording to a pattern.

In exemplary embodiments, an optical scanner 115 can be configured toscan and read the image of the machine-readable element from theprojected label 110. The optical scanner 115 can be configured todetermine the pulse rate or pattern at which the image of projectedlabel is being projected. For example, the optical scanner can be placedover a project label such that the projected label impinges upon theoptical scanner, and optical sensors can in the optical scanner candetect the pulse rate or pattern. The optical scanner 115 can decode anidentifier in the projected label based on the pulse rate or pattern.The optical scanner 115 can detect the pulse rate based on ambient lightof the projected image pulsating in a predetermined pattern on the frontportion of the shelving unit. The optical scanner 115 can transmit thedecoded identifier to a computing system.

In some embodiments, the optical scanner 115 can include a locationmodule 118. The location module 118 can use a positioning system, suchas Geographical Positioning System (GPS) technology or an inertialpositioning system to determine the location of the optical scanner 115in the facility 100. The location module 118 can encode the location inthe facility 100 in electrical signals and transmit the electricalsignals after a predetermined amount of interval of time to thecomputing system. In addition, or in the alternative, the location ofthe optical scanner can be determined based on emissions from theoptical scanner that are received by sensors or receivers disposedthroughout the facility (e.g., using triangulation based on the strengthof the signals received by the sensors or receivers and the location ofthe sensors or receivers). In some embodiments, the sensors or receiverscan be integrated into the projector.

FIG. 1B is a block diagram of laser projectors disposed with respect toshelving units in a facility. In exemplary embodiments, laser projectors122 a-b and 126 a -b can be disposed throughout the facility 128 withrespect to the shelving units 120 a-c and 124 a-c. As described herein,the laser projectors 122 a-b and 126 a-b can be configured to project aprojected label on the front portion of the shelving units 120 a-c and124 a-c. The laser projector closest to the shelving unit can projectthe projected labels on the shelving unit. For example, laser projector122 a can project projected labels on shelving unit 120 a and a part ofshelving unit 120 b. Furthermore, laser projector 122 b can projectprojected labels on part of shelving unit 120 b and shelving unit 120 c.Likewise, laser projector 126 a can project projected labels on shelvingunit 124 a and a part of shelving unit 124 b while laser projector 126 bcan project projected labels on the other part of shelving unit 124 band shelving unit 124 c.

FIG. 2 illustrates an exemplary dynamic projection system 250 inaccordance with exemplary embodiments of the present disclosure. Thedynamic projection system 250 can include one or more databases 205, oneor more servers 210, one or more computing systems 200, the projectors240, and scanners 260. In exemplary embodiments, the computing system200 can be in communication with the databases 205, the server(s) 210,the projectors 240, and scanners 260 via a communications network 215.The computing system 200 can implement at least one instance of aprojection engine 220 configured to implement dynamic projectionprocesses of the dynamic projection system 250.

In an example embodiment, one or more portions of the communicationsnetwork 215 can be an ad hoc network, an intranet, an extranet, avirtual private network (VPN), a local area network (LAN), a wirelessLAN (WLAN), a wide area network (WAN), a wireless wide area network(WWAN), a metropolitan area network (MAN), a portion of the Internet, aportion of the Public Switched Telephone Network (PSTN), a cellulartelephone network, a wireless network, a WiFi network, a WiMax network,any other type of network, or a combination of two or more suchnetworks.

The server 210 includes one or more computers or processors configuredto communicate with the computing system 200 and the databases 205, viathe network 215. The server 210 hosts one or more applicationsconfigured to interact with one or more components of the computingsystem 200 and/or facilitates access to the content of the databases205. In some embodiments, the server 210 can host the projection engine220 or portions thereof. The databases 205 may store information/data,as described herein. For example, the databases 205 can include aphysical objects database 230 and the facilities database 245. Thephysical objects database 230 can store physical objects disposed in afacility. The facilities database 245 can include information associatedwith the facility. The databases 205 and server 210 can be located atone or more geographically distributed locations from each other or fromthe computing system 200. Alternatively, the databases 205 can beincluded within server 210.

In exemplary embodiments, the computing system 200 can receive anidentifier decoded by the scanner 260 from the projection of the imagefirst set of information including a machine-readable element encodedwith the identifier associated with a set of like physical objects. Thecomputing system 200 can execute the projection engine 220 in responseto receiving the identifier. The projection engine 220 can query thephysical objects database 230 using the identifier to retrieve a secondset of information associated with the physical object. The second setof information can include but is not limited to: the name of the set oflike physical objects, type of the set of like physical objects, thequantity of set of like physical objects disposed in the facility, andthe location of the physical object in the facility. In someembodiments, the location can include the exact shelving unit in whichthe set of like physical objects are disposed. The projection engine 220can query the facilities database 245 to determine the closest projector240 in proximity to the location of the set of like physical objects.The projection engine 220 can control the determined the projector 240that is currently projecting the first set of information and cancontrol the projector to project an image of the second set ofinformation associated with the set of like physical objects on thefront portion of the shelving unit in place of the first set ofinformation.

In some embodiments, the projection engine 220 can query the facilitiesdatabase 245 to determine the angle at which the front portion of theshelving unit is disposed. The projection engine 245 can control themirrors of the projector 240 to adjust the reflection of the projectionso that projection of the image of the second set of information is atthe same angle as the front portion of the shelving unit. In someembodiments, projection engine 220 can control the image of the firstset of information to be projected in a first color and the image of thesecond set of information projected in a second color. In otherembodiments, the projection engine 220 can determine the color in whichthe image of the second set of information will be projected based onthe element in the second set of information. For example, theprojection engine 220 can control the projector 240 to project the imageof the second set of information in first color (e.g., red) in responseto determining the quantity of the set of like physical objects isrunning low in the facility or in a second color (e.g., green) inresponse to determining the quantity of the set of like physical objectsin the facility exceeds a threshold quantity.

In some embodiments, the scanner 260 can include a location module. Thelocation module can be configured to encode location information of thescanner 260 into electrical signals and transmit the electrical signalsto the computing system 200 on a periodic basis as the scanner travelsaround the facility. The computing system 200 can receive the electricalsignals from the location module. The computing system 200 can executethe projection engine 220 in response to receiving the electricalsignals. The projection engine 220 can decode the location informationfrom the electrical signals. The projection engine 220 can query thephysical objects database 230 using the location information to retrievevarious sets of like physical objects disposed closest in proximity tothe location of the scanner 260. The projection engine 220 can determinea second (or third) set of information can be projected for at least oneset of like physical objects. The projection engine 220 can determinethe second set of information can be projected based on an element inthe second information. The projection engine 220 can further determinea set of information can be projected associated with the scanner 260(or the user of the scanner 260). The projection engine 220 can querythe facilities database 245 to determine the closest projector 240 tothe location of the scanner 260. The projection engine 220 can controlthe determined closest projector 240 to project the image of the second(or third) set of information associated with the set of like physicalobjects or the scanner 260. For example, the projection engine 220 canproject information about the a quantity of the physical object in thefacility, a location of additional ones of the physical objects in thefacility, a description of the physical objects, and the like, and/orcan project information to the user of the scanner such as messages,tasks, and the like. Therefore, the projection engine 220 can change theprojected image based on either the identifier extract from a scannedmachine-readable element or can be change the projected image based onthe scanner being in proximity to the shelving unit without receiving anidentifier from a scanned machine-readable element.

In some embodiments, the scanner 260 can be implemented as a beacongenerating device configured to transmit beacon signals afterpredetermined time intervals. Furthermore, receivers 255 configured todetect the beacon signals within a predetermined distance can bedisposed throughout the facility. The beacon signal can include anidentifier associated with the scanner 260. The receivers 255 can encodethe detected beacon signal and the strength of the signal in anelectrical signal and transmit the electrical signal to the computingsystem 200. The computing system 200 can execute the projection engine220 in response to receiving the electrical signals. The projectionengine 220 can decode the beacon signal and the strength of the signalfrom the electrical signals. The projection engine 220 can query thefacilities database 245 using the identifier of the scanner 260 todetermine the identification information of the scanner 260. Theprojection engine 220 can determine a second (or third) set ofinformation can be projected for at least one set of like physicalobjects. The projection engine 220 can determine the second set ofinformation can be projected based on an element in the secondinformation. The projection engine 220 can further determine a set ofinformation can be projected based on the identification information ofthe scanner. The projection engine 220 can query the facilities database245 to determine the closest projector 240 location of the scanner basedon the beacon signal and signal strength. The projection engine 220 cancontrol the determined closest projector 240 to project the image of thesecond (or third) set of information associated with the set of likephysical objects or a set of information based on the identificationinformation of the scanner 260. In some embodiments, the scanner 260 canoutput wireless signals to the computing system 200. The computingsystem 200 can determine the location of the scanner 260 based on thestrength of wireless signals.

As a non-limiting example, the dynamic projection system 250 can beimplemented in a retail store. The projectors 260 can be disposed in theretail store with respect to shelving units in which products sold atthe retail store are disposed. The scanners 240 can be operated by usersroaming the retail store. The users can be store employees or customers.In exemplary embodiment, a projector 260 can project an image of a firstset of information associated with a set of like products on the frontportion of the shelving unit. The first set of information can include amachine-readable element encoded with an identifier associated with theset of like products, the name of the set of like products and the priceof the set of like products. A user can scan the machine-readableelement using a scanner 260. The scanner 260 can scan and decode theidentifier from the machine readable element based on the pulse rate atwhich the image of the first set of information is being projected. Thescanner 260 can transmit the identifier to the computing system 200.

The computing system 200 can receive the identifier associated with theset of like products. The computing system 200 can execute theprojection engine 220 in response to receiving the identifier. Theprojection engine 220 can query the physical objects database 230 toretrieve a second set of information of the set of like products and thelocation of the set of like products in the retail store. The second setof information can include the name of the set of like products, thebrand of the set of like products, the quantity of set of like productsavailable at the retail store and/or any coupons associated with the setof like products. The projection engine 220 can query the facilitiesdatabase 245 to determine the closest projector 240 to the location ofthe set of like products. The projection engine 220 can control thedetermined closest projector 240 to change the projected image of thefirst set of information to project the image of the second set ofinformation. The projection engine 220 can control the determinedclosest projector to project the image of the first set of informationin a first color and project the image of the second set of informationin a second color. In some embodiments, the projection engine 220 candetermine the color in which the image of the second set of informationwill be projected at based on an element in the second set ofinformation associated with the set of like products. For example, theprojection engine 220 can instruct the projector 240 to project theimage of the second set of information in red if the set of likeproducts is running out of stock. Alternatively, the projection engine220 can instruct the projector 240 to project the image of the secondset of information in green if there is a promotion associated with theset of like products.

In some embodiments, a user can be roaming the retail store with thescanner 260. The scanner 260 can include a location module which isconfigured to encode the location information of the scanner 260 intoelectrical signals as it roams around the retail store and transmit theelectrical signals to the computing system 200. The computing system 200can receive the electrical signals and execute the projection engine 220in response to receiving the electrical signals. The projection engine220 can decode location information from the electrical signals. Theprojection engine 220 can query the physical objects database 230 usingthe location information to retrieve products disposed in the facilitywith in a predetermined distance of the location of the scanner. Theprojection engine 220 can determine if a second set of informationassociated with a set of like products, can be projected onto theshelving unit in which the products are disposed. For example, theprojection engine 220 can determine a set of like products are runningout of stock in the retail store and an employee of the retail store iswalking by the set of like products with a scanner 260. Accordingly, theprojection engine 220 can determine the second set of information can beprojected onto the shelving unit for the set of like products to informthe employee the set of like products is running low in stock. Theprojection engine 220 can query the facilities database to determine theclosest projector 240 to the set of like products. The projection engine220 can control the determined closest projector 240 to change theprojected image of the first set of information associated to the set oflike products to the projected image of the second set of informationassociated with the set of like products.

In some embodiments, the scanner 260 can encode scanner information inelectrical signals along with the location information and transmit theelectrical signals to the computing system 200. For example, the scannerinformation can be a serial number for the scanner 260. The serialnumber can identify which employee the scanner 260 is assigned and/orwhether the scanner 260 is being operated by a customer.

In some embodiments, a store employee can stock or restock shelvingunits with new products. The store employee can transmit an encodedsignal using the scanner 260 to the computing system 200. The encodedsignal can include the identifier associated with the new productsdisposed on the shelving unit and the location of the scanner. Theprojection engine 220 can receive the encoded signal and decode theidentifier from the signal. The projection engine 220 can query thefacilities database 245 to retrieve the closest projector 240 to thelocation of the scanner and query the physical objects database 230 toretrieve information associated with the products. The projection engine220 can instruct the closest projector 240 to the location of thescanner to project an image of the information associated with theproducts on the front face of the shelving unit.

The computing system 200 can receive electrical signals encoded with thescanner information and the location information and execute theprojection engine 220 in response to receiving the electrical signals.The projection engine 220 can query the physical objects database 230 todetermine the products disposed within a predetermined distance of thelocation of the scanner. Furthermore, the projection engine 220 canquery the facilities database 245 to determine the type of useroperating the scanner 260. The projection engine 220 can determinewhether a second set of information associated with a set of likeproducts disposed within a predetermined distance of the location of thescanner 260 can be projected based on an element of the second set ofinformation and the type of user operating the scanner 260. For example,the projection engine 220 can determine there is a special promotionincluded in the second set of information associated with a set of likeproducts and a customer is walking by the set of like products operatingthe scanner 260. Alternatively, the projection engine 220 can determinethe set of like products is going out of stock and an employee iswalking by the set of like products operating the scanner 260. Theprojection engine 220 can query the facilities database 245 to determinethe closest projector 240 to the set of like products and control thedetermined closest projector 240 to project the image of the second setof information associated with the set of like products.

FIG. 3 is a block diagram of an example computing device 300 forimplementing exemplary embodiments of the present disclosure.Embodiments of the computing device 300 can implement embodiments of theprojection engine. The computing device 300 includes one or morenon-transitory computer-readable media for storing one or morecomputer-executable instructions or software for implementing exemplaryembodiments. The non-transitory computer-readable media may include, butare not limited to, one or more types of hardware memory, non-transitorytangible media (for example, one or more magnetic storage disks, one ormore optical disks, one or more flash drives, one or more solid statedisks), and the like. For example, memory 306 included in the computingdevice 300 may store computer-readable and computer-executableinstructions or software (e.g., applications 330 such as the projectionengine 220) for implementing exemplary operations of the computingdevice 300. The computing device 300 also includes configurable and/orprogrammable processor 302 and associated core(s) 304, and optionally,one or more additional configurable and/or programmable processor(s)302′ and associated core(s) 304′ (for example, in the case of computersystems having multiple processors/cores), for executingcomputer-readable and computer-executable instructions or softwarestored in the memory 306 and other programs for implementing exemplaryembodiments of the present disclosure. Processor 302 and processor(s)302′ may each be a single core processor or multiple core (304 and 304′)processor. Either or both of processor 302 and processor(s) 302′ may beconfigured to execute one or more of the instructions described inconnection with computing device 300.

Virtualization may be employed in the computing device 300 so thatinfrastructure and resources in the computing device 300 may be shareddynamically. A virtual machine 312 may be provided to handle a processrunning on multiple processors so that the process appears to be usingonly one computing resource rather than multiple computing resources.Multiple virtual machines may also be used with one processor.

Memory 306 may include a computer system memory or random access memory,such as DRAM, SRAM, EDO RAM, and the like. Memory 306 may include othertypes of memory as well, or combinations thereof.

A user may interact with the computing device 300 through a visualdisplay device 314, such as a computer monitor, which may display one ormore graphical user interfaces 316, multi touch interface 320 an scanner344, a projector 342 and a pointing device 318.

The computing device 300 may also include one or more storage devices326, such as a hard-drive, CD-ROM, or other computer readable media, forstoring data and computer-readable instructions and/or software thatimplement exemplary embodiments of the present disclosure (e.g.,applications). For example, exemplary storage device 326 can include oneor more databases 328 for storing information regarding the physicalobjects, projectors 342 and scanners 344. The databases 328 may beupdated manually or automatically at any suitable time to add, delete,and/or update one or more data items in the databases.

The computing device 300 can include a network interface 308 configuredto interface via one or more network devices 324 with one or morenetworks, for example, Local Area Network (LAN), Wide Area Network (WAN)or the Internet through a variety of connections including, but notlimited to, standard telephone lines, LAN or WAN links (for example,802.11, T1, T3, 56kb, X.25), broadband connections (for example, ISDN,Frame Relay, ATM), wireless connections, controller area network (CAN),or some combination of any or all of the above. In exemplaryembodiments, the computing system can include one or more antennas 322to facilitate wireless communication (e.g., via the network interface)between the computing device 300 and a network and/or between thecomputing device 300 and other computing devices. The network interface308 may include a built-in network adapter, network interface card,PCMCIA network card, card bus network adapter, wireless network adapter,USB network adapter, modem or any other device suitable for interfacingthe computing device 300 to any type of network capable of communicationand performing the operations described herein.

The computing device 300 may run any operating system 310, such as anyof the versions of the Microsoft® Windows® operating systems, thedifferent releases of the Unix and Linux operating systems, any versionof the MacOS® for Macintosh computers, any embedded operating system,any real-time operating system, any open source operating system, anyproprietary operating system, or any other operating system capable ofrunning on the computing device 300 and performing the operationsdescribed herein. In exemplary embodiments, the operating system 310 maybe run in native mode or emulated mode. In an exemplary embodiment, theoperating system 310 may be run on one or more cloud machine instances.

FIG. 4 is a flowchart illustrating a process implemented by a dynamicprojection system using an identifier according to exemplary embodimentsof the present disclosure. In operation 400, a projector (e.g. projector102, 122 a-b, 126 a-b and 240 as shown in FIG. 1A-2) can display a firstset of information on an image of a projected label (e.g. projectedlabel 110 as shown in FIG. 1A) associated with a set of like physicalobjects (e.g. physical objects 112 as shown in FIG. 1A) on a frontportion (e.g. front portion 116 a-c as shown in FIG. 1A) of shelves(e.g. shelves 114 a as shown in FIG. 1A) of shelving units (e.g.shelving units 108, 120 a-c, 124 a-c as shown in FIG. 1A-B). The firstset of information can include a machine-readable element encoded withan identifier associated with the set of like physical objects. Theimage of the projected label can be projected at a predetermined pulserate. In operation 402, a scanner (e.g. scanner 115 and 260 as shown inFIG. 1A and 2) can scan and decode the identifier from themachine-readable element of the image of the projected label. Thescanner can be an optical scanner that can determine the pulse rate ofthe projected image of the projected label. The scanner can decode theidentifier based on the pulse rate. In operation 404, the scanner cantransmit the identifier to a computing system (e.g. computing system 200as shown in FIG. 2). The computing system can execute the projectionengine (e.g. projection engine 220 as shown in FIG. 2) in response toreceiving the identifier.

In operation 406, the projection engine can query the physical objectsdatabase (e.g. physical objects database 230 as shown in FIG. 2) usingthe identifier to retrieve a second set of information and a location ofthe set of like physical objects associated with the identifier. Inoperation 408, the projection engine can query the facilities database(e.g. facilities database 245 as shown in FIG. 2) using the location ofthe set of like physical objects to retrieve the identity of theprojector projecting the first set of information into the shelf. Inoperation 410, the projection engine can control the identifiedprojector to dynamically project the second set of information in placeof the first set of information.

FIG. 5 is a flowchart illustrating a process implemented by a dynamicprojection system using location according to exemplary embodiments ofthe present disclosure. In operation 500, a projector (e.g. projector102, 122 a-b, 126 a-b and 240 as shown in FIG. 1A-2) can display a firstset of information on an image of a projected label (e.g. projectedlabel 110 as shown in FIG. 1A) associated with a set of like physicalobjects (e.g. physical objects 112 as shown in FIG. 1A) on a frontportion (e.g. front portion 116 a-c as shown in FIG. 1A) of shelves(e.g. shelves 114 a as shown in FIG. 1A) of shelving units (e.g.shelving units 108, 120 a-c, 124 a-c as shown in FIG. 1A-B) . The firstset of information can include a machine-readable element encoded withan identifier associated with the set of like physical objects. Theimage of the projected label can be projected at a predetermined pulserate. In operation 502, a location module (e.g. location module 118 asshown in FIG. 1A) located within a scanner (e.g. scanner 115 and 260 asshown in FIG. 1A and 2) can encode location information for the scannerin electrical signals and transmit the electrical signals to thecomputing system (e.g. computing system 200 as shown in FIG. 2). Thecomputing system can execute the projection engine (e.g. projectionengine 220 as shown in FIG. 2) in response to receiving the electricalsignals. Alternatively, the scanner can be implanted as a beacongenerating device configured to generate beacons after predeterminedtime intervals and receivers (e.g. receivers 255 as shown in FIG. 2)disposed around the facility can detect the beacon signals and thestrength of the beacon signals. The beacon signals can includeidentifiers of the scanner 260. The receivers can encode the beaconsignals and the strength of the beacon signals into electrical signalsand transmit the electrical signals to the computing system.

In operation 504, the projection engine can decode the locationinformation from the electrical signals and query the physical objectsdatabase (e.g. physical objects database 230 as shown in FIG. 2) usingthe location information to determine the physical objects disposedwithin a predetermined location of the scanner. In operation 506, theprojection engine can query the physical objects database to determinewhether a second (or third) set of information for physical objectswithin a predetermined distance to a scanner can be projected and/or aset of information associated with the scanner can be projected. Inoperation 508, the projection engine can query the facilities database(e.g. facilities database 245 as shown in FIG. 2) to retrieve theclosest projector to a set of like physical objects for which a secondset of information can be projected and/or based on the locationinformation of the scanner. In operation 510, the projection engine cancontrol the determined closest projector to project the image of thesecond (or third) set of information on the projected label or an imageof a set of information associated with the scanner.

In describing exemplary embodiments, specific terminology is used forthe sake of clarity. For purposes of description, each specific term isintended to at least include all technical and functional equivalentsthat operate in a similar manner to accomplish a similar purpose.Additionally, in some instances where a particular exemplary embodimentincludes a plurality of system elements, device components or methodsteps, those elements, components or steps may be replaced with a singleelement, component or step Likewise, a single element, component or stepmay be replaced with a plurality of elements, components or steps thatserve the same purpose. Moreover, while exemplary embodiments have beenshown and described with references to particular embodiments thereof,those of ordinary skill in the art will understand that varioussubstitutions and alterations in form and detail may be made thereinwithout departing from the scope of the present disclosure. Furtherstill, other aspects, functions and advantages are also within the scopeof the present disclosure.

Exemplary flowcharts are provided herein for illustrative purposes andare non-limiting examples of methods. One of ordinary skill in the artwill recognize that exemplary methods may include more or fewer stepsthan those illustrated in the exemplary flowcharts, and that the stepsin the exemplary flowcharts may be performed in a different order thanthe order shown in the illustrative flowcharts.

We claim:
 1. A dynamic projection system comprising: a plurality ofprojectors, a first projector in the plurality of projectors configuredto project a first set of information associated with a first set oflike physical objects onto a front portion of a shelving unit, whereinthe first set of information includes an image of a machine-readableelement encoded with an identifier associated with the first set of likephysical objects an optical scanner configured to scan the image of themachine-readable element and decode the identifier from themachine-readable element; and a computing system communicatively coupledto the projector and the optical scanner, the computing systemprogrammed to: determine the location of the optical scanner in responseto the optical scanner scanning the image of the machine-readableelement in the first set of information; query a database using theidentifier to retrieve a second set of information associated with asecond set of like physical objects disposed within a predetermineddistance of the location of the optical scanner; identify a secondprojector in the plurality of projectors as being closest in proximityto a shelfing unit in which the second set of like physical objects isdisposed; and control an output of the second projector to dynamicallyproject the second set of information associated with the second set oflike physical objects onto the front portion of the shelving unit. 2.The system in claim 1, wherein the front portion of the shelving unit isat a predetermined angle and the plurality of projectors is configuredto project the first and second sets of information at the predeterminedangle.
 3. The system in claim 1, wherein the plurality of projectors isconfigured to render the first set of information in a first color andrender the second set of information in a second color.
 4. The system inclaim 1, wherein the optical scanner further comprising a locationmodule configured to output location information associated with theoptical scanner to the computing system.
 5. The system in claim 4,wherein the computing system is further programmed to output a third setinformation in response to a location of the optical scanner by:determining the location of the optical scanner in response to receiptof the location information; querying the database to retrieve anidentification of a set of like physical objects disposed at thelocation; identifying a projector in the plurality of projectors asbeing closest in proximity to the location of the optical scanner; andcontrolling the identified projector to output the third set ofinformation on the front portion of the shelving unit.
 6. The system inclaim 1, wherein the optical scanner is configured to scan the image ofthe machine-readable element by detecting a pulse rate at which thefirst projector renders the image.
 7. The system in claim 6, wherein thepulse rate is unique to the identifier encoded in the image of themachine-readable element.
 8. The system in claim 7, wherein the opticalscanner decodes the identifier from the machine-readable element basedon the pulse rate.
 9. A dynamic projection method comprising:projecting, via a first projector in a plurality of projectors, a firstset of information associated with a first set of like physical objectsonto a front portion of a shelving unit, wherein the first set ofinformation includes an image of a machine-readable element encoded withan identifier associated with the first set of like physical objects;scanning, via an optical scanner, the image of the machine-readableelement; decoding, via the optical scanner, the identifier from themachine-readable element; determining, via a computing system, thelocation of the optical scanner based on the decoded identifier;querying, via the computing system, a database using the identifier toretrieve a second set of information associated with a second set oflike physical objects, disposed within a predetermined distance of thelocation of the optical scanner; identifying, via the computing system,a second projector in the plurality of projectors as being closest inproximity to a shelfing unit in which the second set of like physicalobjects is disposed; and controlling, via the computing system, anoutput of the second projector to dynamically project the second set ofinformation associated with the second set of like physical objects ontothe front portion of the shelving unit.
 10. The method in claim 9,further comprising projecting, via the plurality of projectors, thefirst and second sets of information at a predetermined angle, whereinthe front portion of the shelving unit is at the predetermined angle.11. The method in claim 9, further comprising: rendering, via the secondprojector, the first set of information in a first color; and rendering,via the second projector, the second set of information in a secondcolor.
 12. The method in claim 9, further comprising outputting, via alocation module included in the optical scanner, location informationassociated with the optical scanner to the computing system.
 13. Themethod in claim 12, further comprising outputting, via the computingsystem, a third set information in response to a location of the opticalscanner.
 14. The method in claim 9, wherein scanning, via the opticalscanner, the image of the machine-readable element comprises detecting apulse rate at which the first projector renders the image.
 15. Themethod in claim 14, wherein the pulse rate is unique to the identifierencoded in the image of the machine-readable element.
 16. The method inclaim 15, further comprising decoding, via the optical scanner, theidentifier from the machine-readable element based on the pulse rate.17. A dynamic projection system comprising: a first projector in aplurality of projectors, configured to project a first set ofinformation associated with a first set of like physical objects onto afront portion of a shelving unit, wherein the first set of informationincludes an image of a machine-readable element encoded with anidentifier associated with the first set of like physical objects anoptical scanner including a location module configured to outputlocation information associated with the optical scanner; and acomputing system communicatively coupled to the projector and theoptical scanner, the computing system programmed to: determine thelocation of the optical scanner in response to receipt of the locationinformation; query the database to retrieve an identification of asecond set of like physical objects disposed within a predetermineddistance of the location; identify a second projector as being closestin proximity to a shelfing unit in which the second set of like physicalobjects is disposed; and control the second projector to output a secondset of information associated with the second set of like physicalobjects onto the front portion of the shelving unit.
 18. The system inclaim 17, wherein the front portion of the shelving unit is at apredetermined angle and the plurality of projectors is configured toproject the first and second sets of information at the predeterminedangle.
 19. The system in claim 17, wherein the plurality of projectorsis configured to render the first set of information in a first colorand render the second set of information in a second color.
 20. Thesystem in claim 17, wherein the computing system is further programmedto control the second projector to output the first set of informationon the front portion of the shelving unit subsequent to outputting thesecond set of information on the front portion of the shelving unitbased on determining a distance between the shelving unit and theoptical scanner is greater than a predetermined threshold.